# -*- coding: utf-8 -*-

from osv import fields,osv
from osv.orm import browse_record
import tools
from functools import partial
import pytz
import pooler
from tools.translate import _
from service import security
import netsvc

class aas_personal_info(osv.TransientModel):
    _name = 'aas.personal.info'
#    _inherits = {'res.users': 'user_id_inherit'}
    _columns = {
        'user_id_inherit': fields.many2one('res.users', string='User'),
        'name': fields.char('Họ tên', size=64),
        'code': fields.char('Mã số', size=64),
        'date_birth': fields.date('Ngày sinh', required=False),
        'gov_id': fields.char('Số CMND', size=64, required=False),
        'tax_code': fields.char('Mã số thuế', size=64,),
        'country_id': fields.many2one('res.country', string='Quốc gia'),
        'gender': fields.selection((('male', _('Nam')), ('female', _('Nữ'))), string="Giới tính", required=False),
        'perm_addr': fields.char('Hộ khẩu thường trú', size=128,),
        'tel': fields.char('Số điện thoại cố định', size=64,),
        'mobile': fields.char('Số điện thoại di động', size=64,),
        'email': fields.char('Địa chỉ email', size=64,),
        'fax': fields.char('Số fax', size=64,),
        'cur_addr': fields.char('Địa chỉ hiện tại', size=128,),
        'show_more_info': fields.boolean('Hiển thị các thông tin khác'),
        'receive_emails': fields.boolean('Nhận emails khi có thông báo mới'),
    }
    
    def default_get(self, cr, uid, fields, context=None):
        user_obj = self.pool.get('res.users')
        current_user = user_obj.browse(cr, uid, uid, context=context)
        res = super(aas_personal_info, self).default_get(cr, uid, fields, context=context)
        res.update({'name': current_user.name,
                    'user_id_inherit': current_user.id,
                    'gender': current_user.gender,
                    'code': current_user.code,
                    'date_birth': current_user.date_birth,
                    'gov_id': current_user.gov_id,
                    'country_id': current_user.country_id.id,
                    'tax_code': current_user.tax_code,
                    'perm_addr': current_user.perm_addr,
                    'tel': current_user.tel,
                    'mobile': current_user.mobile,
                    'email': current_user.email,
                    'fax': current_user.fax,
                    'cur_addr': current_user.cur_addr,
                    'show_more_info': current_user.show_more_info,
                    'receive_emails': current_user.receive_emails,})
        return res
    
    def save_info(self, cr, uid, ids, context=False):
        obj = self.browse(cr, uid, ids[0], context=context)
        vals = {
            'tel': obj.tel,
            'mobile': obj.mobile,
            'email': obj.email,
            'fax': obj.fax,
            'cur_addr': obj.cur_addr,
            'show_more_info': obj.show_more_info,
            'receive_emails': obj.receive_emails,
        }
        user_obj = self.pool.get('res.users')
        user_obj.write(cr, 1, [obj.user_id_inherit.id], vals, context=context)
        return {
            'name': _('Chi tiết thông tin cá nhân'),
            'view_type': 'form',
            'view_mode': 'form',
            'res_model': 'aas.personal.info',
            'type': 'ir.actions.act_window',
            'target': 'new',
        }
aas_personal_info()

# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
